<!--[XHTML 文档基本框架 ]-->
<!-- 定义
XHTML 文档类型 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--XHTML 文档根元素,其中 xmlns 属性声明文档命名空间 -->
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- 头部信息结构元素 -->
<head>
<!-- 设置文档字符编码 -->
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<!-- 设置文档标题 -->
<title>无标题文档</title>
</head>
<!-- 主体内容结构元素 -->
<body></body>
</html>
XHTML 代码不排斥 HTML 规则,在结构上也基本相似,但如果仔细比较,它们有两点不同
XHTML 是根据 XML 语法简化而来的,因此它遵循 XML 文档规范。同时 XHTML 又大量继承 HTML 语言语法规范,因此与 HTML 语言非常相似,不过它对代码的要求更加严谨。遵循这些要求,对于培养良好的 XHTML 代码书写习惯是非常重要的。
<p>
、 <li>
,而不习惯写对应的 </p>
和 </li>
来关闭它们,但在
XHTML 中这是不合法的。 XHTML 要求有严谨的结构,所有标签都必须关闭。如果是单独不成对的标签,应在标签的最后加一个" / "来关闭它,如<title>
和 <TITLE>
表示不同的标签。 所有的属性必须用引号("")括起来。在 HTML
中,可以不给属性值加引号,但是在 XHTML 中必须加引号,如 <table height="80"></table>
。特殊情况下,可以在属性值里使用双引号或单引号所有特殊符号都用编码表示,例如,小于号( < )不是元素的一部分,必须被编码为" < ";大于号( > )不是元素的一部分,必须被编码为" > "。
XHTML 1.0 支持 3 种 DTD (文档类型定义)声明:过渡型( Transitional )、严格型( Strict )和框架型( Frameset )
这种文档类型对于标签和属性的语法要求不是很严格,允许在页面中使用 HTML 4.01 的标签(符合 XHTML 语法标准)。过渡型 DTD 语句如下。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w1.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
这类文档类型对于文档内的代码要求比较严格,不允许使用任何表现层的标签和属性。严格型 DTD 语句如下。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w1.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
在严格型文档类型中,以下元素将不被支持。
center | 居中(属于表现层) |
font | 字体样式,如大小、颜色和样式(属于表现层) |
strike | 删除线(属于表现层) |
s | 删除线(属于表现层) |
u | 文本下划线(属于表现层) |
iframe | 嵌入式框架窗口(专用于框架文档类型或过渡型文档) |
isindex | 提示用户输入单行文本(与 input 元素语义重复) |
dir | 定义目录列表(与 dl 元素语义重复) |
menu | 定义菜单列表(与 ul 元素语义重复) |
basefont | 定义文档默认字体属性(属于表现层) |
applet | 定义插件(与 object 元素语义重复) |
在严格型文档类型中,以下属性将不被支持。
-
这是一种专门针对框架页面所使用的 DTD ,当页面中含有框架元素时,就应该采用这种 DTD 。框架型 DTD 语句如下。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w1.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
使用严格的 DTD 来制作页面,当然是最理想的方式,但是,对于没有深入了解 Web 标准的网页设计者来说,比较适合使用过渡型 DTD 。因为过渡型 DTD 还允许使用表现层元素和属性,比较适合大多数网页制作人员使用。 对于大多数标准网页设计师来说,过渡型 DTD ( XHTML 1.0 Transitional )是比较理想的选择。因为这种 DTD 允许使用描述性的元素和属性,也比较容易通过 W3C 的代码校验。
在 XHTML 文档中, DOCTYPE 是一个必要元素,它决定了网页文档的显示规则。 DOCTYPE 是 Document Type 的简写,中文翻译为文档类型。在网页中通过在首行代码中定义文档类型,来指定页面所使用的 HTML 的版本类型。在构建符合标准的网页时,只有使用正确的 DOCTYPE (文档类型), HTML 文档的结构和样式才能被正常解析和呈现。
实际上, DTD 是一套关于标签的语法规则。 DTD 文件是一个 ASCII 的文本文件,后缀名为 .dtd 。利用 DOCTYPE 声明中的 URL 可以访问指定类型的 DTD 详细信息。例如,对于 XHTML 1.0 过渡型 DTD 的 URL 为 http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd 。
一个 DTD 文档包含元素的定义规则,元素间关系的定义规则,元素可使用的属性、实体或符号规则。这些规则用于标识 Web 文档的内容。此外还包括了一些其它规则,它们规定了哪些标签能出现在其它标签中。文档类型不同,它们对应的 DTD 也不相同。
DOCTYPE 声明中各个部分说明如下。
在标准设计中,命名空间是必须设置的一个属性,用来定义该顶级元素以及其包含的各级子元素的唯一性。命名空间声明允许用户通过一个网址指向来识别文档内标签的唯一性。
由于 XML 语言允许用户自定义标签,这样就可能存在所定义的标签与别人定义的标签名称发生冲突的情况。虽然标签名称不同,但是标签所表示的语义可能相同。当这些文档在网上自由传播或者相互交换文件时,由于名称相同可能会发生语义冲突。为此需要为各自的文档指定其语义的限制空间,于是 xmlns 属性就派上了用场。
`